<!DOCTYPE html>
<html lang="en">
<head>
        <meta charset="utf-8" />
        <title>chapter10</title>
        <link rel="stylesheet" href="/theme/css/main.css" />

        <!--[if IE]>
            <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
        <![endif]-->
</head>

<body id="index" class="home">
        <header id="banner" class="body">
                <h1><a href="/">PythonTutorials </a></h1>
                <nav><ul>
                    <li class="active"><a href="/category/cpp.html">cpp</a></li>
                    <li><a href="/category/python.html">python</a></li>
                </ul>
                </nav>
        </header><!-- /#banner -->
<section id="content" class="body">
  <article>
    <header>
      <h1 class="entry-title">
        <a href="/chapter10.html" rel="bookmark"
           title="Permalink to chapter10">chapter10</a></h1>
    </header>

    <div class="entry-content">
<footer class="post-info">
        <span>Mon 06 April 2020</span>
<span>| tags: <a href="/tag/cpp.html">cpp</a><a href="/tag/progarmming.html">progarmming</a></span>
</footer><!-- /.post-info -->      <p># 一、位运算
 * 先将非二进制转换为二进制，然后还原为原来的进制
* 按位运算不存在借位
1. 位运算对象只能是整型或者字符型数据
2. C语言提供6中位运算符：
    1. &amp;    按位与
        * （1&amp;1=1, 1&amp;0=0, 0&amp;1=0，0&amp;0=0）
        * 有零为零，全1为1
        * 相当于按位乘
        * 作用：清零
    2. |    按位或
        * （（1|1=1, 1|0=1, 0|1=1，0|0=0））
        * 有1为1，全零为零
        * 相当于按位加
        * 位置重置为1
    3. ^    按位于或
        * （1\^1=0,0\^0=0,1\^0=1,0\^1=1）
        * 相异为1，相同为零
    4. ~    取反
        * 按位取反运算符是个单目运算符，按位取反后，0变1,1变0
        * ==注：对一个按位取反后得到的数值计算方法：该数+1后，再乘以-1（该数加1乘以-1）==
    5. &lt;&lt;   左移
        * 格式;数&lt;<n 
        * 将一个二进制数按位依序左移n位
        * 对一个数左移n位后得到的值，为该数乘以2的n次方
    6. \>>   右移
        * 将一个二进制数按位依序右移n位
        * 若该数为负数，并且不能被2的n次方整除，则得到数为商加-1（数/2的n次方；负数、不能被2的n次方整除，则公式为数/2的n次方，然后加1）
3. 复合赋值运算符5个：
    1. &amp;=
    2. |=
    3. ^=
    4. &lt;&lt;=
    5. >&gt;=
    6. *=
    7. +=
    8. -=
    9. %=
    10. =</p>
<h1>二、文件的操作</h1>
<p>相关函数
1. fopen()
2. fclose()
3. fputc()
4. fgetc()
5. fputs()
6. fgets()
7. fwrite()
8. fread()
10. fprintf()
11. fscanf()
12. frewind()
13. fseek()
14. ftell()
15. feof()
16. exit()
17. FILE *fp;</p>
<p>五种遍历
- 一维数组
    - for(i=0,i&lt;元素个数;i++){} 
- 二维数组
    - for(i=0,i&lt;行个数;i++)
    - for(i=0,i&lt;列个数;i++)
    - {}<br>
- 字符数组
    - for(i=0;s[i]!='\0';i++)<br>
- 文件中遍历
    - while(!feof(fp)) {}
- 链表中遍历
    - while(p!= NULL){p=p-&gt;next} </p>
    </div><!-- /.entry-content -->

  </article>
</section>
        <section id="extras" class="body">
                <div class="blogroll">
                        <h2>blogroll</h2>
                        <ul>
                            <li><a href="http://getpelican.com/">Pelican</a></li>
                            <li><a href="http://python.org/">Python.org</a></li>
                            <li><a href="http://jinja.pocoo.org/">Jinja2</a></li>
                            <li><a href="#">You can modify those links in your config file</a></li>
                        </ul>
                </div><!-- /.blogroll -->
                <div class="social">
                        <h2>social</h2>
                        <ul>

                            <li><a href="#">You can add links in your config file</a></li>
                            <li><a href="#">Another social link</a></li>
                        </ul>
                </div><!-- /.social -->
        </section><!-- /#extras -->

        <footer id="contentinfo" class="body">
                <p>Powered by <a href="http://www.maxiaoan.com/">Maxiaoan</a></p>
        </footer><!-- /#contentinfo -->

</body>
</html>